home *** CD-ROM | disk | FTP | other *** search
- case $# in
- 0)
- ng=h
- while $test "$ng" = h ; do
- $echo ""
- $echo $n "Newsgroup(s): $c"
- read ng
- case $ng in
- h)
- $cat <<'EOH'
-
- Type the name of one or more newsgroups to which you wish to post an article.
- If you want to post to multiple newsgroups, it is better to do them all at
- once than to post to each newsgroup individually, which defeats the news
- reading programs' strategies of eliminating duplicates.
-
- Separate multiple newsgroup names with commas.
- EOH
- ;;
- esac
- done
- ;;
- *)
- ng=$1
- shift
- ;;
- esac
- case $ng in
- *\ *)
- ng=`$echo "$ng" | $sed 's/[, ] */,/g'`
- ;;
- esac
- case $ng in
- net.*|mod.*|comp.*|news.*|sci.*|rec.*|misc.*|soc.*|talk.*)
- defdist=world
- dist=h
- ;;
- *.*)
- defdist=`expr "X$ng" : 'X\([a-z0-9]*\)'`
- dist=h
- ;;
- *)
- defdist=''
- dist=''
- ;;
- esac
-
- while $test "$dist" = h ; do
- if $test -f $lib/distributions; then
- $echo " "
- $echo "Your local distribution prefixes are:"
- $cat $lib/distributions
- $echo " "
- else
- $egrep -v '[ ]none$' <<EOM
-
- Your local distribution prefixes are:
- Local organization: $loc
- Organization: $org
- City: $city
- $stpr: $state
- Country: $cntry
- Continent: $cont
- Everywhere: world
-
- EOM
- fi
- $echo $n "Distribution ($defdist): $c"
- read dist
- case $dist in
- '') dist=$defdist ;;
- esac
- case $dist in
- h)
- $cat <<'EOH'
-
- The Distribution line may be used to limit the distribution of an article
- to some subset of the systems that would receive the article based only on
- the Newsgroups line. For example, if you want to sell your car in talk.auto,
- and you live in New Jersey, you might want to put "nj" on the Distribution
- line to avoid advertising in California, which has enough problems of its own.
- The actual area designators to use depend on where you are, of course.
- EOH
- ;;
- ''|$loc*|$org*|$city*|$state*|$cntry*|$cont*|$defdist)
- ;;
- net*|world*|comp*|news*|sci*|rec*|misc*|soc*|talk*)
- dist=''
- ;;
- *)
- if $test -f $lib/distributions && \
- $egrep "^$dist[ ]" $lib/distributions >$tmpart && \
- $test -s $tmpart; then
- : null
- else
- $echo "Unrecognized distribution prefix--type h for help, CR to use anyway."
- defdist=$dist
- dist=h
- fi
- ;;
- esac
- done
-
- # Force the first newsgroup to be specified as a followup-to
- follow=`echo "$ng" | sed 's/,.*//'`
-
- case $# in
- 0)
- title=h
- while $test "$title" = h ; do
- $echo ""
- $echo $n "Title/Subject: $c"
- read title
- case $title in
- h)
- $cat <<'EOH'
-
- Type the title for your article. Please make it as informative as possible
- (within reason) so that people who aren't interested won't have to read the
- article to find out they aren't interested. This includes marking movie
- spoilers as (spoiler), and rotated jokes as (rot 13).
- EOH
- ;;
- esac
- done
- ;;
- *)
- title="$*"
- ;;
- esac
-
- # now build a file with a header for them to edit
-
- set X ${USER-${LOGNAME-`who am i`}}
- shift
- logname=$1
- case $logname in
- *!*) logname=`expr "$logname" : '!\(.*\)$'` ;;
- esac
- case ${NAME-$nametype} in
- bsd)
- fullname=`$sed </etc/passwd -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^,:;]*\).*"'$'"/\1/" -e "q" -e "}" -e "d"`
- case $fullname in
- *'&'*) : GACK
- lname=`$echo $logname | $tr 'a-z' 'A-Z'`
- lname=`$echo $lname $logname | $sed 's/^\(.\)[^ ]* ./\1/'`
- fullname=`$echo "$fullname" | $sed "s/&/${lname}/"`
- ;;
- esac
- ;;
- usg)
- fullname=`$sed </etc/passwd -e "/^$logname:/{s/^[^:]*:[^:]*:[^:]*:[^:]*:\([^(:]*\).*"'$'"/\1/" -e "s/^.*-//" -e "q" -e "}" -e "d"`
- ;;
- *)
- fullname=${NAME-`$cat $dotdir/.fullname`}
- ;;
- esac
-
- orgname=${ORGANIZATION-$orgname}
- case $orgname in
- /*) orgname=`$cat $orgname` ;;
- esac
-
- $cat > $tmpart <<EOHeader
- Newsgroups: $ng
- Subject: $title
- Expires:
- References:
- Sender:
- Followup-To: $follow
- Distribution: $dist
- Organization: $orgname
- Keywords:
-
- EOHeader
-
-